package com.FH.applyFrom.notic_form;


import com.FH.util.ResultDTO;

import javax.ejb.EJB;
import javax.enterprise.context.RequestScoped;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;

/**
 * Created by samsung on 2016/7/27.
 *
 * 发文管理
 */
@Path("/noticeform")
@Produces(MediaType.APPLICATION_JSON)
@RequestScoped
public class NoticeFormResource {

    @EJB
    private NoticeFormDAO noticeFormDAO;


    /**
     * 审核GET
     *
     * @param search
     * @param page
     * @param size
     * @return
     */
    @GET
    @Path("/{search}&{page}&{size}")
    public ResultDTO getNoticeFormInfo(@PathParam("search") String search, @PathParam("page") String page, @PathParam("size") String size) {

        //添加分页查询
        if (null == page || "".equals(page) || "0".equals(page)) {
            page = "1";    //默认从第1页开始查起
        }/*else
        {
            page =((Integer.parseInt(page)-1)*Integer.parseInt(size))+"";
        }*/
        if (null == size || "".equals(size)) {
            size = "10";//默认10行数据
        }

        return noticeFormDAO.getNoticeFormInfo(search, page, size);
    }

    /**
     * 提交拟稿
     * <p>
     * 审核、盖章、发送初始值都为 "0"
     *
     * @param dataDTO
     * @return
     */
    @POST
    @Consumes(MediaType.APPLICATION_JSON)
    public ResultDTO addNoticeFormInfo(NoticeFormPullDTO dataDTO) {
        return noticeFormDAO.addNoticeFormInfo(dataDTO);
    }


//    @PUT
//    @Consumes(MediaType.APPLICATION_JSON)
//    public ResultDTO edit(String notice_form_id){
//        return noticeFormDAO.shenhe(notice_form_id);
//    }

    @PUT
    @Consumes(MediaType.APPLICATION_JSON)
    public ResultDTO deleteNoticeFormInfo(NoticeFormPullDTO dataDTO) {
        return noticeFormDAO.deleteNoticeFormInfo(dataDTO);
    }

    @PUT
    @Path("/update")
    @Consumes(MediaType.APPLICATION_JSON)
    public ResultDTO updateNoticeFormInfo(NoticeFormPullDTO dataDTO) {
        return noticeFormDAO.updateNoticeFormInfo(dataDTO);
    }



    @GET
    @Path("/fast/{search}&{page}&{size}")
    public ResultDTO getNotice_fastInfo(@PathParam("search") String search, @PathParam("page") String page, @PathParam("size") String size) {

        //添加分页查询
        if (null == page || "".equals(page) || "0".equals(page)) {
            page = "1";    //默认从第1页开始查起
        }/*else
        {
            page =((Integer.parseInt(page)-1)*Integer.parseInt(size))+"";
        }*/
        if (null == size || "".equals(size)) {
            size = "10";//默认10行数据
        }

        return noticeFormDAO.getNotice_fastInfo(search, page, size);
    }

    @GET
    @Path("/isnot/{search}&{page}&{size}")
    public ResultDTO getIsnotInfo(@PathParam("search") String search, @PathParam("page") String page, @PathParam("size") String size) {

        //添加分页查询
        if (null == page || "".equals(page) || "0".equals(page)) {
            page = "1";    //默认从第1页开始查起
        }/*else
        {
            page =((Integer.parseInt(page)-1)*Integer.parseInt(size))+"";
        }*/
        if (null == size || "".equals(size)) {
            size = "10";//默认10行数据
        }

        return noticeFormDAO.getIsnotInfo(search, page, size);
    }

    @GET
    @Path("/other/{search}&{page}&{size}")
    public ResultDTO getNoticeotherInfo(@PathParam("search") String search, @PathParam("page") String page, @PathParam("size") String size) {

        //添加分页查询
        if (null == page || "".equals(page) || "0".equals(page)) {
            page = "1";    //默认从第1页开始查起
        }/*else
        {
            page =((Integer.parseInt(page)-1)*Integer.parseInt(size))+"";
        }*/
        if (null == size || "".equals(size)) {
            size = "10";//默认10行数据
        }

        return noticeFormDAO.getNoticeotherInfo(search, page, size);
    }

/*
//修改單獨字段，目的：不走修改work_flow表方法
 */
    @PUT
    @Path("/update/other")
    @Consumes(MediaType.APPLICATION_JSON)
    public ResultDTO updateNoticeFormOtherInfo(NoticeFormPullDTO dataDTO) {
        return noticeFormDAO.updateNoticeFormOtherInfo(dataDTO);
    }

}